package com.chaoyer.cynet.common.utils;

import java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.temporal.ChronoUnit;
import java.util.Date;


/**
 * java8 时间工具类
 * 简写处理了一些方法名
 * LDT  LocalDateTime
 * LD   LocalDate
 */
public class DateUtils {

    // Date to LocalDateTime
    public static LocalDateTime dateToLDT(Date date) {
        Instant instant = date.toInstant();
        ZoneId zone = ZoneId.systemDefault();
        return LocalDateTime.ofInstant(instant, zone);
    }

    /**
     * 和现在相隔的时间 方法有点误差,在不需要很精确的情况使用
     * @param time   比较的时间
     * @param unit   时间单位
     * @return   返回响应的相隔时间 单位为unit
     */
    public static long betweenNow(LocalDateTime time,ChronoUnit unit) {
        return LocalDateTime.now().until(time,unit);
    }
}
